package api.workerswithdb;

import java.util.ArrayList;
import java.util.Date;

import api.entitites.IOrder;
import api.entitites.OrderStatus;

public interface IDAOOrder {

	public Boolean insertOrderToDB(IOrder order);

	public IOrder getOrderFromDb(Integer numberOrder);

	public Integer getIdOrder(Integer orderNumber);

	public ArrayList<IOrder> sortAllOrders(SortOrdersBy sortOrdersBy);

	public ArrayList<IOrder> sortMadingOrders(SortOrdersBy sortOrdersBy);

	public ArrayList<IOrder> sortOrdersByPeriod(Date begin, Date end,
			SortOrdersBy sortOrdersBy, OrderStatus orderStatus);

	public String getMasterByOrder(Integer numberOrder);

	public Date getNextFreeDate();

	public Boolean shiftDeadlineDate(Date newDate, Integer numberOrder);

	public Boolean markOrder(Integer orderNumber, OrderStatus orderStatus);

	public Integer cloneOrder(Integer numberOrder);
}
